From 5b72611469515897a030e908606af8e715d1e541 Mon Sep 17 00:00:00 2001 From: "danms@us.ibm.com" Date: Thu, 10 Nov 2005 11:48:05 +0100 Subject: [PATCH] Make the 04_restore test verify that two block devices and two nics are restored to a working state and that the nics retain their configuration. --- .../restore/04_restore_withdevices_pos.py | 66 +++++++++++++++++-- 1 file changed, 60 insertions(+), 6 deletions(-) diff --git a/tools/xm-test/tests/restore/04_restore_withdevices_pos.py b/tools/xm-test/tests/restore/04_restore_withdevices_pos.py index e287fa8a1c..3c3d998b2f 100644 --- a/tools/xm-test/tests/restore/04_restore_withdevices_pos.py +++ b/tools/xm-test/tests/restore/04_restore_withdevices_pos.py @@ -5,14 +5,21 @@ from XmTestLib import * -domain = XmTestDomain() +import re + +domain = XmTestDomain(extraOpts={"nics":2}) domain.configAddDisk("phy:/dev/ram0", "hda1", "w") +domain.configAddDisk("phy:/dev/ram1", "hdb2", "w") s, o = traceCommand("mke2fs -q /dev/ram0") if s != 0: FAIL("Unable to mke2fs /dev/ram0 in dom0") +s, o = traceCommand("mke2fs -q /dev/ram1") +if s != 0: + FAIL("Unable to mke2fs /dev/ram1 in dom0") + try: domain.start() except DomainError, e: @@ -22,13 +29,38 @@ try: console = XmConsole(domain.getName()) console.sendInput("foo") - run = console.runCmd("mount /dev/hda1 /mnt") + run = console.runCmd("mkdir /mnt/a /mnt/b") + if run["return"] != 0: + FAIL("Unable to mkdir /mnt/a /mnt/b") + + run = console.runCmd("mount /dev/hda1 /mnt/a") if run["return"] != 0: FAIL("Unable to mount /dev/hda1") - run = console.runCmd("echo bar > /mnt/foo") + run = console.runCmd("mount /dev/hdb2 /mnt/b") + if run["return"] != 0: + FAIL("Unable to mount /dev/hdb2") + + run = console.runCmd("echo hda1 > /mnt/a/foo") + if run["return"] != 0: + FAIL("Unable to write to block device hda1!") + + run = console.runCmd("echo hdb2 > /mnt/b/foo") if run["return"] != 0: - FAIL("Unable to write to block device!") + FAIL("Unable to write to block device hdb2!") + + run = console.runCmd("ifconfig eth0 169.254.0.1 netmask 255.255.255.0") + if run["return"] != 0: + FAIL("Unable to configure DomU's eth0") + + run = console.runCmd("ifconfig eth1 169.254.1.1 netmask 255.255.255.0") + if run["return"] != 0: + FAIL("Unable to configure DomU's eth1") + + run = console.runCmd("ifconfig lo 127.0.0.1") + if run["return"] != 0: + FAIL("Unable to configure DomU's lo") + except ConsoleError, e: FAIL(str(e)) @@ -63,9 +95,31 @@ try: if run["return"] != 0: FAIL("ls failed on restored domain") - run = console.runCmd("cat /mnt/foo | grep bar") + run = console.runCmd("cat /mnt/a/foo") + if run["return"] != 0: + FAIL("Unable to read from block device hda1") + if not re.search("hda1", run["output"]): + FAIL("Failed to read correct data from hda1") + + run = console.runCmd("cat /mnt/b/foo") if run["return"] != 0: - FAIL("Unable to read from block device") + FAIL("Unable to read from block device hdb2") + if not re.search("hdb2", run["output"]): + FAIL("Failed to read correct data from hdb2") + + run = console.runCmd("ifconfig") + if not re.search("eth0", run["output"]): + FAIL("DomU's eth0 disappeared") + if not re.search("169.254.0.1", run["output"]): + FAIL("DomU's eth0 lost its IP") + if not re.search("eth1", run["output"]): + FAIL("DomU's eth1 disappeared") + if not re.search("169.254.1.1", run["output"]): + FAIL("DomU's eth1 lost its IP") + if not re.search("Loopback", run["output"]): + FAIL("DomU's lo disappeared") + if not re.search("127.0.0.1", run["output"]): + FAIL("DomU's lo lost its IP") except ConsoleError, e: FAIL(str(e)) -- 2.30.2